﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EntitiesLayer;
using DAL.Repositories;

namespace DAL
{
    public class UnitOfWork
    {
        private EjercicioRepository _ejercicioRepository;
        private MusculoRepository _musculoRepository;
        private RolRepository _rolRepository;
        private IRepository<Usuario> _usuarioRepository;

        public EjercicioRepository EjercicioRepository
        {
            get
            {
                if (this._ejercicioRepository == null)
                {
                    this._ejercicioRepository = new EjercicioRepository();
                }
                return _ejercicioRepository;
            }
        }

        public MusculoRepository MusculoRepository
        {
            get
            {
                if (this._musculoRepository == null)
                {
                    this._musculoRepository = new MusculoRepository();
                }
                return _musculoRepository;
            }
        }

        public RolRepository RolRepository
        {
            get
            {
                if (this._rolRepository == null)
                {
                    this._rolRepository = new RolRepository();
                }
                return _rolRepository;
            }
        }


        public IRepository<Usuario> UsuarioRepository
        {
            get
            {
                if (_usuarioRepository == null)
                {
                    _usuarioRepository = new UsuarioRepository();
                }
                return _usuarioRepository;
            }
        }

    }
}
